const mongoose = require('mongoose');
const shortid = require('shortid');
const moment = require('moment');


const DingSchema = new mongoose.Schema({

    _id:{
        type:String,
        default:shortid.generate,
        unique:true,
    },
    color:{
    	type:String
    },
    model:{
    	type:String
    },
    num:{
    	type:Number,
    },
    good_id:{
    	type:String,
    	ref:'Good'
    },
    king_id:{
    	type:String,
    	ref:'Buller'
    },
    seller_id:{
    	type:String,
    	ref:'Seller'
    },
    area:{
    	type:Object
    },
    //买家是否已付款
    money:{
    	type:Boolean,
    	default:false
    },
    //商家确认送出
    hasSend:{
    	type:Boolean,
    	default:false
    },
    //确认收货
    hasGet:{
    	type:Boolean,
    	default:false
    },
    //操作的是否是当前订单,用来改变当前订单的付款状态
    newDing:{
        type:Boolean,
        default:true,
    },
    create_time:{
        type:Date,
        default:Date.now
    },



})
DingSchema.statics = {
    getDingsByBuller:(query,callback)=>{
        Ding.find(query).populate('seller_id good_id').sort({'create_time':-1}).then((bullerDings)=>{
            callback(null,bullerDings);
        }).catch((err)=>{
            callback(err);
        })
    },
    getDingsBySeller:(query,callback)=>{
        Ding.find(query).populate('king_id good_id').sort({'create_time':1}).then((sellerDings)=>{
            callback(null,sellerDings);
        }).catch((err)=>{
            callback(err);
        })
    },
    getDingById:(id,callback)=>{
        Ding.findOne({'_id':id}).populate('king_id good_id').then((ding)=>{
            callback(null,ding);
        }).catch((err)=>{
            callback(err);
        })
    }
}

const Ding = mongoose.model('ding',DingSchema);
module.exports = Ding;